package com.quick.develop.flowable.mapper;

import org.apache.ibatis.annotations.Param;

import java.util.Collection;
import java.util.List;

/**
 * @author junyuan.liu
 * @description: 流程参数
 * @date 2023/6/19 13:53
 */
public interface BpmVariableMapper {
    
    Integer getVarCount(@Param("procInstId") String procInstId, @Param("names") Collection<String> names);

    Integer getNeddDelVarCount(@Param("procInstId") String procInstId, @Param("names") Collection<String> names);


    /** 
     * @description 
     * @param procInstId procInstId
     * @param names names
     * @author junyuan.liu
     * @date 2023/6/20 16:03
     */ 
    void deleteVarByNames(@Param("procInstId") String procInstId, @Param("names") Collection<String> names);

    /**
     * @description
     * @param procInstId procInstId
     * @param names names
     * @author junyuan.liu
     * @date 2023/9/5 17:34
     */
    void deleteNotNeedVar(@Param("procInstId") String procInstId, @Param("names") Collection<String> names);

    /**
     * @description
     * @param procInstId procInstId
     * @return java.util.List<java.lang.String>
     * @author junyuan.liu
     * @date 2023/8/30 13:56
     */
    List<String> getAssigneeBytearry(@Param("procInstId") String procInstId);

    /**
     * @description
     * @param ids ids
     * @author junyuan.liu
     * @date 2023/8/30 13:57
     */
    void deleteAssigneeBytearry(@Param("ids") Collection<String> ids);
}
